package com.dao;

import com.entity.KechengxinxiEntity;
//表示课程信息实体类，用于封装课程信息相关的数据，比如课程编号、课程名称、授课教师等各种具体的属性。
import com.baomidou.mybatisplus.mapper.BaseMapper;
//这是 MyBatis-Plus 框架提供的基础的 Mapper 接口，通常继承它可以获得一些基本的数据库操作方法（如常见的增删改查等），方便进行数据持久化相关的开发。
import java.util.List;
//Java 标准库中的集合类，用于存放多个元素，在这里会用来存放查询得到的课程信息相关的视图对象（VO）或者实体对象列表等。
import com.baomidou.mybatisplus.mapper.Wrapper;
//MyBatis-Plus 中的条件构造器，用于构建动态的 SQL 查询条件，比如可以方便地设置 WHERE 子句中的各种条件组合，实现灵活的查询操作。
import com.baomidou.mybatisplus.plugins.pagination.Pagination;
//MyBatis-Plus 提供的分页插件相关的类，用于实现数据库查询的分页功能，比如指定每页显示的记录数、获取当前页码等分页相关操作。
import org.apache.ibatis.annotations.Param;
//来自 MyBatis 框架的注解，用于在接口方法的参数中指定参数名，使得在对应的 SQL 映射语句中可以准确地引用这些参数，特别是在有多个参数或者参数名容易混淆的情况下很有用。
import com.entity.vo.KechengxinxiVO;
//应该是课程信息的值对象（Value Object，简称VO），通常用于展示层，它是对实体类中部分属性进行提取、组合等操作后形成的一个更适合前端展示或者业务逻辑传递的对象，与具体的数据库表结构不一定完全对应。
import com.entity.view.KechengxinxiView;
//课程信息的视图对象，也是一种对数据进行特定呈现的对象，可能整合了多个相关实体或者进行了一些业务逻辑处理后的结果，用于在特定的业务场景下返回给调用者查看数据。


/**
 * 课程信息
 * 
 * @author 
 * @email 
 * @date 2021-06-02 12:21:47
 */
//接口定义部分
public interface KechengxinxiDao extends BaseMapper<KechengxinxiEntity> {
	
	List<KechengxinxiVO> selectListVO(@Param("ew") Wrapper<KechengxinxiEntity> wrapper);
	
	KechengxinxiVO selectVO(@Param("ew") Wrapper<KechengxinxiEntity> wrapper);
	
	List<KechengxinxiView> selectListView(@Param("ew") Wrapper<KechengxinxiEntity> wrapper);

	List<KechengxinxiView> selectListView(Pagination page,@Param("ew") Wrapper<KechengxinxiEntity> wrapper);
	
	KechengxinxiView selectView(@Param("ew") Wrapper<KechengxinxiEntity> wrapper);
	
}



